package com.ruoyi.gxs.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.entity.SysDept;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 待审批奖励对象 gxs_pend_award
 * 
 * @author 高晓松
 * @date 2023-12-27
 */
public class GxsPendAward extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 待审批奖励编号 */
    private Long gxsPendAwardid;

    /** 获奖用户id */
    @Excel(name = "获奖用户id")
    private Long userId;

    /** 学号 */
    @Excel(name = "学号")
    private String userName;

    /** 待审批获奖用户 */
    @Excel(name = "待审批获奖用户")
    private String nickName;

    /** 待审批所属部门 */
    @Excel(name = "待审批所属部门")
    private Long deptId;

    /** 待审批奖励标题 */
    @Excel(name = "待审批奖励标题")
    private String gxsPendTitle;

    /** 综测类型 */
    @Excel(name = "综测类型")
    private Long gxsTypeId;

    /** 获奖形式 */
    @Excel(name = "获奖形式")
    private Long gxsAwardForm;

    /** 获奖级别 */
    @Excel(name = "获奖级别")
    private Long gxsWardlevel;

    /** 获奖等级 */
    @Excel(name = "获奖等级")
    private Long gxsGrade;

    /** 待审批获奖地点 */
    @Excel(name = "待审批获奖地点")
    private String gxsPendLocation;

    /** 待审批获奖时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "待审批获奖时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date gxsPendDate;

    /** 待审批获奖学年 */
    @Excel(name = "待审批获奖学年")
    private Long gxsYearid;

    /** 待审批获奖证明 */
    @Excel(name = "待审批获奖证明")
    private String gxsPendProof;

    /** 待审批获奖描述 */
    @Excel(name = "待审批获奖描述")
    private String gxsPendDescription;

    /** 待审批状态 */
    @Excel(name = "待审批状态")
    private Long gxsPendStatus;



    private SysDept sysDept;

    private GxsYearname gxsYearname;

    public GxsYearname getGxsYearname() {
        return gxsYearname;
    }

    public void setGxsYearname(GxsYearname gxsYearname) {
        this.gxsYearname = gxsYearname;
    }

    public SysDept getSysDept() {
        return sysDept;
    }

    public void setSysDept(SysDept sysDept) {
        this.sysDept = sysDept;
    }

    public void setGxsPendAwardid(Long gxsPendAwardid)
    {
        this.gxsPendAwardid = gxsPendAwardid;
    }

    public Long getGxsPendAwardid() 
    {
        return gxsPendAwardid;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setNickName(String nickName) 
    {
        this.nickName = nickName;
    }

    public String getNickName() 
    {
        return nickName;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setGxsPendTitle(String gxsPendTitle) 
    {
        this.gxsPendTitle = gxsPendTitle;
    }

    public String getGxsPendTitle() 
    {
        return gxsPendTitle;
    }
    public void setGxsTypeId(Long gxsTypeId) 
    {
        this.gxsTypeId = gxsTypeId;
    }

    public Long getGxsTypeId() 
    {
        return gxsTypeId;
    }
    public void setGxsAwardForm(Long gxsAwardForm) 
    {
        this.gxsAwardForm = gxsAwardForm;
    }

    public Long getGxsAwardForm() 
    {
        return gxsAwardForm;
    }
    public void setGxsWardlevel(Long gxsWardlevel) 
    {
        this.gxsWardlevel = gxsWardlevel;
    }

    public Long getGxsWardlevel() 
    {
        return gxsWardlevel;
    }
    public void setGxsGrade(Long gxsGrade) 
    {
        this.gxsGrade = gxsGrade;
    }

    public Long getGxsGrade() 
    {
        return gxsGrade;
    }
    public void setGxsPendLocation(String gxsPendLocation) 
    {
        this.gxsPendLocation = gxsPendLocation;
    }

    public String getGxsPendLocation() 
    {
        return gxsPendLocation;
    }
    public void setGxsPendDate(Date gxsPendDate) 
    {
        this.gxsPendDate = gxsPendDate;
    }

    public Date getGxsPendDate() 
    {
        return gxsPendDate;
    }
    public void setGxsYearid(Long gxsYearid) 
    {
        this.gxsYearid = gxsYearid;
    }

    public Long getGxsYearid() 
    {
        return gxsYearid;
    }
    public void setGxsPendProof(String gxsPendProof) 
    {
        this.gxsPendProof = gxsPendProof;
    }

    public String getGxsPendProof() 
    {
        return gxsPendProof;
    }
    public void setGxsPendDescription(String gxsPendDescription) 
    {
        this.gxsPendDescription = gxsPendDescription;
    }

    public String getGxsPendDescription() 
    {
        return gxsPendDescription;
    }
    public void setGxsPendStatus(Long gxsPendStatus) 
    {
        this.gxsPendStatus = gxsPendStatus;
    }

    public Long getGxsPendStatus() 
    {
        return gxsPendStatus;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("gxsPendAwardid", getGxsPendAwardid())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("nickName", getNickName())
            .append("deptId", getDeptId())
            .append("gxsPendTitle", getGxsPendTitle())
            .append("gxsTypeId", getGxsTypeId())
            .append("gxsAwardForm", getGxsAwardForm())
            .append("gxsWardlevel", getGxsWardlevel())
            .append("gxsGrade", getGxsGrade())
            .append("gxsPendLocation", getGxsPendLocation())
            .append("gxsPendDate", getGxsPendDate())
            .append("gxsYearid", getGxsYearid())
            .append("gxsPendProof", getGxsPendProof())
            .append("gxsPendDescription", getGxsPendDescription())
            .append("gxsPendStatus", getGxsPendStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("sysDept", getSysDept())
            .append("gxsYearname", getGxsYearname())
            .toString();
    }
}
